package utilizadores;

import java.util.LinkedList;


public class Utilizador {

	
	private String idUtilizador, nome, email;

	
	private Escola escola = null;

	private LinkedList<Utilizador> seguindo, seguidoPor;

	public Utilizador(String idUtilizador) {
		this.idUtilizador = idUtilizador;
		seguindo = new LinkedList<Utilizador>();
		seguidoPor = new LinkedList<Utilizador>();

	}

	
	public LinkedList<Utilizador> getSeguindo() {
		return seguindo;
	}

	
	public LinkedList<Utilizador> getSeguidoPor() {
		return seguidoPor;
	}

	
	public void addSeguidor(Utilizador utilizador) {
		seguidoPor.add(utilizador);
	}

	
	public void addSeguir(Utilizador utilizador) {
		seguindo.add(utilizador);
	}

	
	public void removeSeguidor(Utilizador utilizador) {
		seguidoPor.remove(utilizador);
	}

	
	public void removeSeguir(Utilizador utilizador) {
		seguindo.remove(utilizador);
	}

	
	public String getIdUtilizador() {
		return idUtilizador;
	}

	
	public String getEmail() {
		return email;
	}

	
	public void setEmail(String email) {
		this.email = email;
	}

	
	public String getNome() {
		return nome;
	}

	
	public void setNome(String nome) {
		this.nome = nome;
	}

	
	public Escola getEscola() {
		return escola;
	}

	
	public void setEscola(Escola escola) {
		this.escola = escola;
	}

	
	public boolean instanciado() {
		if (nome.isEmpty() || email.isEmpty() || escola.getEscola().isEmpty())
			return false;
		return true;
	}


	@Override
	public String toString() {

		String res = "";

		res = res + this.nome + " " + this.email;

		return res;

	}
}
